const {DataTypes} = require("sequelize");

const seq = require("../db/seq");
// 创建模型(Model zd_user -> 表 zd_users)
const User = seq.define(
    "user",
    {
        // id 会被sequelize自动创建, 管理
        user_name: {
            type: DataTypes.STRING,
            allowNull: false,
            unique: true,
            comment: "用户名, 唯一",
        },
        nick_name: {
            type: DataTypes.STRING,
            allowNull: true,
            comment: "用户昵称",
            defaultValue: "用户",
        },
        password: {
            type: DataTypes.CHAR(64),
            allowNull: false,
            comment: "密码",
        },
        money: {
            type: DataTypes.DECIMAL(10, 2),
            allowNull: true,
            comment: "用户余额",
            defaultValue: 0,
        },
        is_admin: {
            type: DataTypes.BOOLEAN,
            allowNull: false,
            defaultValue: 0,
            comment: "是否为管理员, 0: 不是管理员(默认); 1: 是管理员",
        },
        is_vip: {
            type: DataTypes.BOOLEAN,
            allowNull: false,
            defaultValue: 0,
            comment: "是否为会员, 0: 不是vip(默认); 1: 是vip",
        },
    },
    {
        paranoid: true,
    }
);

// 强制同步数据库(创建数据表)
// User.sync({ force: true });

module.exports = User;
